// 通过ajax获取通配符列表，主要是在删除通配符时使用
function listWildcard(obj) {
	if(UTIL.checkButton(obj)) {
		if($(".wildcard-list").is(":visible")) {
			$(".wildcard-list").hide();
			$(obj).val("打开列表");
			UTIL.releaseButton(obj);
		} else {
			API.wildcardGetList(function(res) {
				if(res.code == 0) {
					$(".wildcard-list-instance").remove();
					
					for(var wildcard in res.data.list) {
						addWildCardTr2Table(res.data.list[wildcard].name, res.data.list[wildcard].property, res.data.list[wildcard].id);
					}
					
					$(".wildcard-list").show();
					$(".wildcard-list-instance").show();
					$(obj).val("隐藏列表");
					UTIL.releaseButton(obj);
				} else {
					alert(res.desc);
					UTIL.releaseButton(obj);
				}
			});
		}
	}
}
function addWildCardTr2Table(name, property, id) {
	var tr = $(".wildcard-list-example").clone();
	tr.attr("class", "wildcard-list-instance");
	$(tr.children("td")[0]).html(name);
	$(tr.children("td")[1]).html(property);
	tr.find(".wildcard-list-id").val(id);

	$(".wildcard-list table").append(tr);
}

// 获取页面上填入的名称和属性添加通配符
function addWildcard(obj) {
	if(UTIL.checkButton(obj)) {
		var name = $.trim($("#addWildcardName").val());
		var property = $.trim($("#addWildcardProperty").val());
		if(name && property) {
			API.wildcardAdd({ "name":name, "property":property }, function(res) {
				if(res.code == 0) {
//					if($(".wildcard-list").is(":visible")) {
//						addWildCardTr2Table(name, property, res.data.id);
//					}
					window.location.reload();
					UTIL.releaseButton(obj);
				} else {
					alert(res.desc);
					UTIL.releaseButton(obj);
				}
			});
		} else {
			UTIL.releaseButton(obj);
		}
	}
}

// 通过id删除通配符
function deleteWildcard(obj) {
	if(UTIL.checkButton(obj)) {
		var name = $(obj).parent().prev().prev().html();
		var property = $(obj).parent().prev().html();
		if (confirm("确定删除“" + name + "-" + property + "”？")) {
			var id = $(obj).prev().val();
			API.wildcardDelete({ "id":id }, function(res) {
				if(res.code == 0) {
					$(obj).parents("tr").remove();
					alert("删除成功！");
					window.location.href="/vocab/element_wildcard_list.htm?tabid=21_5";
					UTIL.releaseButton(obj);
				} else {
					alert(res.desc);
					UTIL.releaseButton(obj);
				}
			});
		}
	}
}

// 全选、取消全选的事件
function selectAll(){
	if ($("#box_all").prop("checked")) {
		$(".id_box").prop("checked", true);
	} else {
		$(".id_box']").prop("checked", false);
	}
}

// 子复选框的事件
function setSelectAll(){
	//当没有选中某个子复选框时，SelectAll取消选中
	var chsub = $(".id_box").length; //获取subcheck的个数
	var checkedsub = $(".id_box:checked").length; //获取选中的subcheck的个数
	if (checkedsub == chsub) {
		$("#box_all").prop("checked", true);
	} else {
		$("#box_all").prop("checked", false);
	}
}

// 提交该页
function submitPage(obj) {
	if(UTIL.checkButton(obj)) {
		// 将勾选和未勾选的id拼凑成字符串
		var checkedIds = "";
		var unCheckedIds = "";
		$(".id_box").each(function() {
			if($(this).prop("checked")) {
				checkedIds += $(this).val() + ",";
			} else {
				unCheckedIds += $(this).val() + ",";
			}
		});
		
		if(checkedIds) {
			checkedIds = checkedIds.substring(0, checkedIds.length-1);
		}
		if(unCheckedIds) {
			unCheckedIds = unCheckedIds.substring(0, unCheckedIds.length-1);
		}
		
		// 调用后台接口维护
		var param = {"checkedIds" : checkedIds, "unCheckedIds" : unCheckedIds};
		API.wildcardCheckPage(param, function(res) {
			if(res.code == 0) {
				window.location.reload();
			} else {
				alert(res.desc);
			}
			UTIL.releaseButton(obj);
		});
	}
}